home *** CD-ROM | disk | FTP | other *** search
/ Language/OS - Multiplatform Resource Library / LANGUAGE OS.iso / t3_1 / notes3_1.txt < prev    next >
Text File  |  1993-07-09  |  3KB  |  104 lines

  1. Release notes for T3.1
  2.  
  3. Fixes:
  4. All reported bugs in T3.0 have been fixed.  In addition the longstanding bugs
  5. with shadowing in locales have been fixed.  The Scheme bugs have been fixed
  6. and the scheme environment is now more complete.  See the Scheme documentation
  7. for details.
  8.  
  9.  
  10. Removals:
  11. RECKLESSNESS no longer exists.  T now runs with the efficiency of better than
  12. recklessness high and the safety of recklessness low (almost).
  13.  
  14.  
  15. Changes in behavior:
  16. SET on global variables is no longer expensive.
  17.  
  18. Because of a problem with interrupts and the GC, a keyboard interrupt may
  19. not be detected.  A second interrupt will cause an immediate break, but
  20. if a GC occurs while in the breakloop it will not be possible to continue
  21. the interrupted procedure.
  22.  
  23. Generic arithmetic on fixnums is much faster.
  24.  
  25. The object file extension has been changed to two characters.
  26. T3.0 object files will not run in T3.1
  27.  
  28. Additions:
  29. (LOAD-OUT-OF-DATE-ACTION) is a switch that controls what the loader does
  30. with a filespec without an extension.  The options are: (default warn)
  31.  
  32. binary    -- load the object file.
  33. source    -- load the source file.
  34. newer     -- load the most recent of object and source files.
  35. recompile -- recompile the file if the source is newer than the object file.
  36. warn      -- give a warning if the source is newer than the object file.
  37. query     -- offer to recompile if the source is newer than the object file.
  38.  
  39. (ORBIT expression . locale) does expression at a time compilation, e.g.
  40.   (orbit '(define (f x) (+ x 1))) will cause the expression to be compiled
  41. and loaded into the (repl-env).
  42.  
  43. (CL expression) prints out assembly code for expression.
  44.  
  45.  
  46. (TIME expression count) computes expression count times and prints the
  47. virtual time used.  The count argument is optional.
  48.  
  49. LOAD-FOREIGN is now released for all systems except HP's.
  50.  
  51. Before loading a T object file with a DEFINE-FOREIGN, use
  52. (LOAD-FOREIGN file.o) to install the Unix .o files needed.
  53.  
  54. Suspending systems is now documented.
  55.  
  56. A system is suspended as follows:
  57.  
  58. % t -h 8000000 # as big as possible
  59.  
  60. > ;; load stuff
  61. > (gc)
  62. > ((*value t-implementation-env 'system-suspend) filespec nil)
  63. > (exit)
  64.  
  65.  
  66. If a GC occurs during the suspend it will hang.  This means that the heap
  67. was not big enough.
  68.  
  69. The binary distributions are a directory called tsystem.  In that directory
  70. are a bunch of files including a script called linkt which takes a .o file
  71. produced by suspend and creates an executable.
  72.  
  73. % cd tsystem
  74. % linkt filespec.o newimage
  75.  
  76. If the code to be loaded before suspending a system contains DEFINE-FOREIGN
  77. forms, files containing these forms should be loaded inside of:
  78.  
  79. (bind (((*value t-implementation-env 'make-foreign-procedure)
  80.         (*value t-implementation-env 'make-foreign)))
  81.   (load file1)
  82.   ...)
  83.  
  84.  
  85. In this case the linkt script must be modified to include .o files that are
  86. referenced by DEFINE-FOREIGN expressions.
  87.  
  88.  
  89.  
  90. System building:  
  91.  
  92. It is possible to build a system from the sources.  The tsystem directory
  93. contains a file, i.e. sunbuild.t which explains how.
  94.  
  95. Installation:
  96.  
  97. As in T3.0 a shell variable TSYSTEM should be defined to be the tsystem
  98. directory.  If there are fixes to the T3.1 system, there will be a fix file
  99. in the same place as this one.  Send your email address to t-project@yale.arpa
  100. to receive fixes, updates, etc.
  101.  
  102. Bugs: t-version-number doesn't work anymore.
  103.  
  104. additional bugs to kranz@wheaties.ai.mit.edu